Blackbams Blog
development – digital arts – internet
Knowledge is free. No one may take possession of it.
17. October 2012
As it was a bit tricky to find out how this works, I want to share this script. This is how you can convert a UTC timestamp without offset and summertime into a converted timestamp using PHP. This is especially useful when extending a Calendar Plugin for example, which saves its dates in UTC-timestamps while local time is needed.
/** Calculate middle european summertime */
function utc_to_local_time($timestamp,$offset=0,$summertime=true) {
$year = strftime("%Y", $timestamp);
$timestamp += (3600*intval($offset)); // add local offset
// Calculate beginning and end of Summertime
$initTime = mktime(2,0,0,3,31-date('w', mktime(2,0,0,3,31,$year)),$year);
$endTime = mktime(2,0,0,10,31-date('w', mktime(2,0,0,10,31,$year)),$year);
// Check if summertime, return adequatly
if (($timestamp > $initTime && $timestamp < $endTime) && $summertime) {
return ($timestamp + 3600);
} else {
return ($timestamp);
}
}
// example: Austria time
echo date("d.m.Y, H:i",utc_to_local_time($utc_time,1);
No comments yet
Kommentare abonnieren (RSS) or URL Trackback
Leave a comment: